import os
import random
os.environ['DJANGO_SETTINGS_MODULE'] = 'settings'



from google.appengine.dist import use_library
use_library('django', '1.2')

from google.appengine.ext.webapp import template
from google.appengine.ext import webapp
from google.appengine.ext.webapp.util import run_wsgi_app

class HelloHandler(webapp.RequestHandler):
  def get(self):
	template_values = {}
	path = os.path.join(os.path.dirname(__file__), 'hello.html')
	self.response.out.write(template.render(path, template_values))

class GoodbyeHandler(webapp.RequestHandler):
  def get(self):
  	self.response.out.write('Goodbye app engine world!')


class DiceHandler(webapp.RequestHandler):
  def get(self):
  	times = self.request.get('times')

	self.response.out.write('Hello Perla!<br>')
	self.response.out.write('Let the Dice Rolling Begin <br><br>')	
	#! /usr/bin/python
	# A Python script that simulates rolling two dice a few times.
	# Module for dealing with random numbers.
	

	# Number of times to roll the dice.
	DICE_ROLLS = int(times)
	#print "Rolling the dice " + str(DICE_ROLLS) + " times"
	dice_1=0;
	dice_2=0;

	for roll_num in range(DICE_ROLLS):
		# Simulate rolling two dice.
		dice_1 = random.randint(1, 6)
		dice_2 = random.randint(1, 6)
		self.response.out.write( "Rolls: "+ str(dice_1)+" - " + str(dice_2)+ "<br>")
		if dice_1 == 1 and dice_2 == 1:
			self.response.out.write( '*Got Snake Eyes!<br>')
		if dice_1 == 6 and dice_2 == 6:	
			self.response.out.write( '**Double Sixes!<br>')
        self.response.out.write('You rolled ' + times + ' times')



class WrongAnswer:
  def __init__(self, question, guess, correct):
	self.question = question
	self.guess = guess
	self.correct = correct   	


class GradeQuizHandler(webapp.RequestHandler):
  def get(self):
    	
	addition_guess= self.request.get('addition')
	capital_guess=self.request.get('capital').strip().lower()
	template_values = {'name' : self.request.get('name'), 'wrong_answers' : [] }
	
	if addition_guess != '7':
	  template_values['wrong_answers'].append(WrongAnswer("3 + 4", addition_guess, 7))

	if capital_guess != 'sacramento':
 	  template_values['wrong_answers'].append(WrongAnswer("the capital of California", capital_guess, "Sacramento"))

	path = os.path.join(os.path.dirname(__file__), 'grade_quiz.html')
    	self.response.out.write(template.render(path, template_values))




class QuizHandler(webapp.RequestHandler):
  def get(self):
	template_values = {'name' : self.request.get('name') }
    	path = os.path.join(os.path.dirname(__file__), 'quiz.html')
    	self.response.out.write(template.render(path, template_values))


def main():
  application = webapp.WSGIApplication([('/hello.*', HelloHandler),
					('/goodbye.*', GoodbyeHandler),
					('/quiz', QuizHandler),
					('/grade_quiz', GradeQuizHandler),
					('/dice.*', DiceHandler)],
                                       debug=True)
  run_wsgi_app(application)

if __name__ == '__main__':
  main()
